iT邦幫忙

2023 iThome 鐵人賽

DAY 18
0
AI & Data

深度學習概念和應用(PyTorch)系列 第 18

DAY18 實作 圖片

  • 分享至 

  • xImage
  •  

在還不會自己建模型的時候,今天先試著用已經訓練過的模型來做最基本的圖片辨識,會列出所有已經訓練過的模型,我用網路上薩摩耶的圖片
https://ithelp.ithome.com.tw/upload/images/20231003/201631876rcPKaQZou.jpg(圖片來源:https://www.dcard.tw/f/pet/p/233192736)

from torchvision import models
import torch
dir(models)

可以看到很多可以用的模型種類

net = models.efficientnet_b0(pretrained=True)
net

輸入這些後就可以直接下載模型來使用,以上步驟和DAY4的torchhub有一點像,輸入net會輸出這個模型的基本資訊。

from torchvision import transforms
process = transforms.Compose([
        transforms.Resize(256),
        transforms.CenterCrop(224),
        transforms.ToTensor(),
        transforms.Normalize(
            mean=[0.4, 0.5, 0.4],
            std=[0.28, 0.24, 0.26]
        )])

對輸入圖片做出一些處理,若是更改mean std都會對輸出結果有一定程度的影響。

from PIL import Image
img = Image.open("圖片路徑")
img1 = process(img)

載入圖片然後做一些處理

with open('/imagenet_classes.txt') as f:
    labels = [line.strip() for line in f.readlines()]
_, index = torch.max(out, 1)

載入類別表
輸出最有可能的種類

[(labels[idx], percentage[idx].item()) for idx in indices[0][:5]]

輸出前五名,我們可以藉由輸出的前五名分析結果。
https://ithelp.ithome.com.tw/upload/images/20231003/20163187a8uFSo43yG.png
其餘四項也都是犬類,甚至也有容易跟薩摩耶混淆的白狐狸,而薩摩耶也確實實信心分數最高的。


上一篇
DAY 17 模型訓練常見的參數
下一篇
DAY19 初步學習深度學習模型、架構
系列文
深度學習概念和應用(PyTorch)30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言